[INFO] cloning repository https://github.com/prodnull/prmana
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/prodnull/prmana" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fprodnull%2Fprmana", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fprodnull%2Fprmana'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c52aa65710a8599d67c3229330a23b57342828ba
[INFO] fixing prodnull/prmana against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fprodnull%2Fprmana" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/prodnull/prmana
[INFO] finished tweaking git repo https://github.com/prodnull/prmana
[INFO] tweaked toml for git repo https://github.com/prodnull/prmana written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/prodnull/prmana on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/prodnull/prmana already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74
[INFO] running `Command { std: "docker" "start" "8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating prmana-core/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating pam-prmana/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating prmana-agent/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking hashbrown v0.17.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling rustls v0.23.38
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling aws-lc-rs v1.16.2
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking untrusted v0.7.1
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking pem v3.0.6
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]    Compiling uncased v0.9.10
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]    Compiling figment v0.10.19
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking inlinable_string v0.1.15
[INFO] [stderr]     Checking tokio v1.51.1
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]    Compiling pear_codegen v0.2.9
[INFO] [stderr]     Checking uuid v1.23.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling error-chain v0.12.4
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking secrecy v0.10.3
[INFO] [stderr]     Checking match_cfg v0.1.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking hostname v0.3.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking simple_asn1 v0.6.4
[INFO] [stderr]     Checking tagptr v0.2.0
[INFO] [stderr]     Checking syslog v6.1.1
[INFO] [stderr]     Checking pamsm v0.5.5
[INFO] [stderr]     Checking pear v0.2.9
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking gethostname v0.4.3
[INFO] [stderr]     Checking uzers v0.12.2
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking fastrand v2.4.1
[INFO] [stderr]    Compiling libdbus-sys v0.2.7
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]     Checking is-docker v0.2.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking moka v0.12.15
[INFO] [stderr]     Checking is-wsl v0.4.0
[INFO] [stderr]     Checking linux-keyutils v0.2.5
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking dbus v0.9.10
[INFO] [stderr]     Checking open v5.3.3
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling aws-lc-sys v0.39.1
[INFO] [stderr]     Checking directories v5.0.1
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking listenfd v1.0.2
[INFO] [stderr]     Checking sd-notify v0.5.0
[INFO] [stderr]     Checking deadpool-runtime v0.1.4
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling tracing-test-macro v0.2.6
[INFO] [stderr]     Checking serdect v0.2.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking assert-json-diff v2.0.2
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking dbus-secret-service v4.1.0
[INFO] [stderr]     Checking tracing-journald v0.3.2
[INFO] [stderr]     Checking tracing-test v0.2.6
[INFO] [stderr]     Checking keyring v3.6.3
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking deadpool v0.12.3
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking tokio-test v0.4.5
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking wiremock v0.6.5
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking jsonwebtoken v10.3.0
[INFO] [stderr]     Checking prmana-core v0.1.0 (/opt/rustwide/workdir/prmana-core)
[INFO] [stderr]    Migrating prmana-core/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking pam-prmana v0.1.0 (/opt/rustwide/workdir/pam-prmana)
[INFO] [stderr]     Checking prmana-agent v0.1.0 (/opt/rustwide/workdir/prmana-agent)
[INFO] [stderr]    Migrating pam-prmana/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed pam-prmana/src/security/jti_cache.rs (1 fix)
[INFO] [stderr]    Migrating prmana-agent/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed pam-prmana/src/policy/config.rs (6 fixes)
[INFO] [stderr]        Fixed pam-prmana/src/audit.rs (5 fixes)
[INFO] [stderr]        Fixed pam-prmana/src/oidc/validation.rs (4 fixes)
[INFO] [stderr]        Fixed pam-prmana/src/security/fs_store.rs (1 fix)
[INFO] [stderr]        Fixed pam-prmana/src/lib.rs (27 fixes)
[INFO] [stderr]        Fixed pam-prmana/src/security/rate_limit.rs (6 fixes)
[INFO] [stderr]        Fixed pam-prmana/src/auth.rs (4 fixes)
[INFO] [stderr]        Fixed prmana-agent/src/daemon/socket.rs (1 fix)
[INFO] [stderr]        Fixed prmana-agent/src/crypto/protected_key.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1570:31
[INFO] [stdout]      |
[INFO] [stdout] 1569 |         let mut state_write = state.write().await;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `state_write` calls a custom destructor
[INFO] [stdout]      |             `state_write` will be dropped later as of Edition 2024
[INFO] [stdout] 1570 |         if let Some(handle) = state_write.refresh_task.take() {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1574 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state_write` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1521:15
[INFO] [stdout]      |
[INFO] [stdout] 1492 |         let http_client = match reqwest::blocking::Client::builder()
[INFO] [stdout]      |             -----------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `http_client` calls a custom destructor
[INFO] [stdout]      |             `http_client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1521 |         match request.send() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1544 |     })
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/reqwest-0.12.28/src/blocking/client.rs:1343:1
[INFO] [stdout]      |
[INFO] [stdout] 1343 | impl Drop for InnerClientHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `http_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/reqwest-0.12.28/src/blocking/client.rs:1343:1
[INFO] [stdout]      |
[INFO] [stdout] 1343 | impl Drop for InnerClientHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1400:31
[INFO] [stdout]      |
[INFO] [stdout] 1399 |         let mut state_write = state.write().await;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `state_write` calls a custom destructor
[INFO] [stdout]      |             `state_write` will be dropped later as of Edition 2024
[INFO] [stdout] 1400 |         if let Some(handle) = state_write.refresh_task.take() {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1404 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state_write` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1310:23
[INFO] [stdout]      |
[INFO] [stdout] 1298 |                 tokio::time::sleep(Duration::from_secs(sleep_secs)).await;
[INFO] [stdout]      |                 ---------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `__awaitee` calls a custom destructor
[INFO] [stdout]      |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1307 |                     tokio::time::sleep(Duration::from_secs(delay)).await;
[INFO] [stdout]      |                     ----------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1310 |                 match perform_token_refresh(&state).await {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                       |                             |
[INFO] [stdout]      |                       |                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                       |                             up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                       up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1311 |                     Ok((new_token, new_expires, username)) => {
[INFO] [stdout]      |                         ---------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `new_token` calls a custom destructor
[INFO] [stdout]      |                         `new_token` will be dropped later as of Edition 2024
[INFO] [stdout] 1312 |                         let mut state_write = state.write().await;
[INFO] [stdout]      |                             ---------------   -------------------
[INFO] [stdout]      |                             |                 |             |
[INFO] [stdout]      |                             |                 |             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             |                 |             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `state_write` calls a custom destructor
[INFO] [stdout]      |                             `state_write` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1353 |                     Err(e) => {
[INFO] [stdout]      |                         -
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `e` calls a custom destructor
[INFO] [stdout]      |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1369 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `new_token` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/secrecy-0.10.3/src/lib.rs:68:1
[INFO] [stdout]      |
[INFO] [stdout]   68 | impl<S: Zeroize + ?Sized> Drop for SecretBox<S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state_write` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating prmana-agent/src/main.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating pam-prmana/src/bin/prmana-jti-helper.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> prmana-agent/src/main.rs:563:10
[INFO] [stdout]     |
[INFO] [stdout] 557 |     let server = AgentServer::new(socket_path, state)
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `server` calls a custom destructor
[INFO] [stdout]     |         `server` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 563 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 564 |         .map_err(|e| anyhow::anyhow!("Server error: {e}"))
[INFO] [stdout] 565 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]    --> prmana-agent/src/daemon/presence_cache.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl Drop for PresenceCache {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | impl Drop for AbortHandle {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/secrecy-0.10.3/src/lib.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl<S: Zeroize + ?Sized> Drop for SecretBox<S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `server` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating pam-prmana/src/bin/audit_verify.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating pam-prmana/tests/jti_cross_fork.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating pam-prmana/tests/break_glass_integration.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating prmana-agent/tests/daemon_lifecycle.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating pam-prmana/tests/attestation.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating pam-prmana/tests/token_exchange.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating prmana-agent/tests/headless_storage.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed prmana-agent/tests/headless_storage.rs (4 fixes)
[INFO] [stderr]    Migrating pam-prmana/tests/entra_integration.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating pam-prmana/tests/adversarial_pentest.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed prmana-agent/src/daemon/sweep.rs (3 fixes)
[INFO] [stderr]    Migrating pam-prmana/tests/multi_idp_integration.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed prmana-agent/src/storage/router.rs (6 fixes)
[INFO] [stderr]        Fixed prmana-agent/src/config.rs (16 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1570:31
[INFO] [stdout]      |
[INFO] [stdout] 1569 |         let mut state_write = state.write().await;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `state_write` calls a custom destructor
[INFO] [stdout]      |             `state_write` will be dropped later as of Edition 2024
[INFO] [stdout] 1570 |         if let Some(handle) = state_write.refresh_task.take() {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1574 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state_write` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1521:15
[INFO] [stdout]      |
[INFO] [stdout] 1492 |         let http_client = match reqwest::blocking::Client::builder()
[INFO] [stdout]      |             -----------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `http_client` calls a custom destructor
[INFO] [stdout]      |             `http_client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1521 |         match request.send() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1544 |     })
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/reqwest-0.12.28/src/blocking/client.rs:1343:1
[INFO] [stdout]      |
[INFO] [stdout] 1343 | impl Drop for InnerClientHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `http_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/reqwest-0.12.28/src/blocking/client.rs:1343:1
[INFO] [stdout]      |
[INFO] [stdout] 1343 | impl Drop for InnerClientHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1400:31
[INFO] [stdout]      |
[INFO] [stdout] 1399 |         let mut state_write = state.write().await;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `state_write` calls a custom destructor
[INFO] [stdout]      |             `state_write` will be dropped later as of Edition 2024
[INFO] [stdout] 1400 |         if let Some(handle) = state_write.refresh_task.take() {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1404 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state_write` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> prmana-agent/src/daemon/socket.rs:1310:23
[INFO] [stdout]      |
[INFO] [stdout] 1298 |                 tokio::time::sleep(Duration::from_secs(sleep_secs)).await;
[INFO] [stdout]      |                 ---------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `__awaitee` calls a custom destructor
[INFO] [stdout]      |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1307 |                     tokio::time::sleep(Duration::from_secs(delay)).await;
[INFO] [stdout]      |                     ----------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1310 |                 match perform_token_refresh(&state).await {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                       |                             |
[INFO] [stdout]      |                       |                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                       |                             up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                       up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1311 |                     Ok((new_token, new_expires, username)) => {
[INFO] [stdout]      |                         ---------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `new_token` calls a custom destructor
[INFO] [stdout]      |                         `new_token` will be dropped later as of Edition 2024
[INFO] [stdout] 1312 |                         let mut state_write = state.write().await;
[INFO] [stdout]      |                             ---------------   -------------------
[INFO] [stdout]      |                             |                 |             |
[INFO] [stdout]      |                             |                 |             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             |                 |             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `state_write` calls a custom destructor
[INFO] [stdout]      |                             `state_write` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1353 |                     Err(e) => {
[INFO] [stdout]      |                         -
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `e` calls a custom destructor
[INFO] [stdout]      |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1369 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `new_token` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/secrecy-0.10.3/src/lib.rs:68:1
[INFO] [stdout]      |
[INFO] [stdout]   68 | impl<S: Zeroize + ?Sized> Drop for SecretBox<S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state_write` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating prmana-agent/tests/pqc_integration.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> prmana-agent/src/main.rs:563:10
[INFO] [stdout]     |
[INFO] [stdout] 557 |     let server = AgentServer::new(socket_path, state)
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `server` calls a custom destructor
[INFO] [stdout]     |         `server` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 563 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 564 |         .map_err(|e| anyhow::anyhow!("Server error: {e}"))
[INFO] [stdout] 565 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]    --> prmana-agent/src/daemon/presence_cache.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl Drop for PresenceCache {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | impl Drop for AbortHandle {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/secrecy-0.10.3/src/lib.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl<S: Zeroize + ?Sized> Drop for SecretBox<S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `server` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 29s
[INFO] [stderr] crater-edition-check: prmana-core v0.1.0 (/opt/rustwide/workdir/prmana-core) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: pam-prmana v0.1.0 (/opt/rustwide/workdir/pam-prmana) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: prmana-agent v0.1.0 (/opt/rustwide/workdir/prmana-agent) updating edition from 2021 to 2024
[INFO] [stderr]     Checking prmana-core v0.1.0 (/opt/rustwide/workdir/prmana-core)
[INFO] [stderr]     Checking pam-prmana v0.1.0 (/opt/rustwide/workdir/pam-prmana)
[INFO] [stderr]     Checking prmana-agent v0.1.0 (/opt/rustwide/workdir/prmana-agent)
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/audit.rs:1922:9
[INFO] [stdout]      |
[INFO] [stdout] 1922 |         unsafe { std::env::remove_var("PRMANA_HOSTNAME") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> pam-prmana/src/lib.rs:18:9
[INFO] [stdout]      |
[INFO] [stdout]   18 | #![deny(unsafe_code)]
[INFO] [stdout]      |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/audit.rs:1931:9
[INFO] [stdout]      |
[INFO] [stdout] 1931 |         unsafe { std::env::set_var("PRMANA_HOSTNAME", "my-custom-host.example.com") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/audit.rs:1935:9
[INFO] [stdout]      |
[INFO] [stdout] 1935 |         unsafe { std::env::remove_var("PRMANA_HOSTNAME") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/audit.rs:1942:9
[INFO] [stdout]      |
[INFO] [stdout] 1942 |         unsafe { std::env::remove_var("PRMANA_HOSTNAME") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/auth.rs:1258:9
[INFO] [stdout]      |
[INFO] [stdout] 1258 |         unsafe { std::env::set_var("PRMANA_DPOP_MAX_AGE", "120") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/auth.rs:1260:9
[INFO] [stdout]      |
[INFO] [stdout] 1260 |         unsafe { std::env::set_var("PRMANA_DPOP_REQUIRE_NONCE", "1") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/auth.rs:1268:9
[INFO] [stdout]      |
[INFO] [stdout] 1268 |         unsafe { std::env::remove_var("PRMANA_DPOP_MAX_AGE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/auth.rs:1270:9
[INFO] [stdout]      |
[INFO] [stdout] 1270 |         unsafe { std::env::remove_var("PRMANA_DPOP_REQUIRE_NONCE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/oidc/validation.rs:668:9
[INFO] [stdout]     |
[INFO] [stdout] 668 |         unsafe { std::env::set_var("OIDC_ISSUER", "http://localhost:8080/realms/test") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/oidc/validation.rs:670:9
[INFO] [stdout]     |
[INFO] [stdout] 670 |         unsafe { std::env::set_var("OIDC_CLIENT_ID", "prmana") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/oidc/validation.rs:681:9
[INFO] [stdout]     |
[INFO] [stdout] 681 |         unsafe { std::env::remove_var("OIDC_ISSUER") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/oidc/validation.rs:683:9
[INFO] [stdout]     |
[INFO] [stdout] 683 |         unsafe { std::env::remove_var("OIDC_CLIENT_ID") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/policy/config.rs:2087:9
[INFO] [stdout]      |
[INFO] [stdout] 2087 |         unsafe { std::env::set_var("PRMANA_SECURITY_MODES__JTI_ENFORCEMENT", "strict") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/policy/config.rs:2094:9
[INFO] [stdout]      |
[INFO] [stdout] 2094 |         unsafe { std::env::remove_var("PRMANA_SECURITY_MODES__JTI_ENFORCEMENT") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/policy/config.rs:2108:9
[INFO] [stdout]      |
[INFO] [stdout] 2108 |         unsafe { std::env::set_var("PRMANA_TEST_MODE", "true") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/policy/config.rs:2118:9
[INFO] [stdout]      |
[INFO] [stdout] 2118 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/policy/config.rs:2690:9
[INFO] [stdout]      |
[INFO] [stdout] 2690 |         unsafe { std::env::set_var("PRMANA_TIMEOUTS__CLOCK_SKEW_FUTURE_SECS", "15") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/policy/config.rs:2696:9
[INFO] [stdout]      |
[INFO] [stdout] 2696 |         unsafe { std::env::remove_var("PRMANA_TIMEOUTS__CLOCK_SKEW_FUTURE_SECS") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/fs_store.rs:351:9
[INFO] [stdout]     |
[INFO] [stdout] 351 |         unsafe { std::env::set_var(env_var, dir.to_str().unwrap()) };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/jti_cache.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |         unsafe { std::env::set_var("PRMANA_JTI_DIR", &dir) };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/rate_limit.rs:684:9
[INFO] [stdout]     |
[INFO] [stdout] 684 |         unsafe { std::env::set_var("PRMANA_RATE_LIMIT_MAX_ATTEMPTS", "50") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/rate_limit.rs:687:9
[INFO] [stdout]     |
[INFO] [stdout] 687 |         unsafe { std::env::remove_var("PRMANA_RATE_LIMIT_MAX_ATTEMPTS") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/rate_limit.rs:695:9
[INFO] [stdout]     |
[INFO] [stdout] 695 |         unsafe { std::env::set_var("PRMANA_RATE_LIMIT_MAX_ATTEMPTS", "0") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/rate_limit.rs:698:9
[INFO] [stdout]     |
[INFO] [stdout] 698 |         unsafe { std::env::remove_var("PRMANA_RATE_LIMIT_MAX_ATTEMPTS") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/rate_limit.rs:709:9
[INFO] [stdout]     |
[INFO] [stdout] 709 |         unsafe { std::env::set_var("PRMANA_RATE_LIMIT_MAX_ATTEMPTS", "999999") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> pam-prmana/src/security/rate_limit.rs:712:9
[INFO] [stdout]     |
[INFO] [stdout] 712 |         unsafe { std::env::remove_var("PRMANA_RATE_LIMIT_MAX_ATTEMPTS") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1406:9
[INFO] [stdout]      |
[INFO] [stdout] 1406 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1417:9
[INFO] [stdout]      |
[INFO] [stdout] 1417 |         unsafe { std::env::set_var("PRMANA_TEST_MODE", "true") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1420:9
[INFO] [stdout]      |
[INFO] [stdout] 1420 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1427:9
[INFO] [stdout]      |
[INFO] [stdout] 1427 |         unsafe { std::env::set_var("PRMANA_TEST_MODE", "1") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1430:9
[INFO] [stdout]      |
[INFO] [stdout] 1430 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1440:13
[INFO] [stdout]      |
[INFO] [stdout] 1440 |             unsafe { std::env::set_var("PRMANA_TEST_MODE", value) };
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1447:9
[INFO] [stdout]      |
[INFO] [stdout] 1447 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1458:9
[INFO] [stdout]      |
[INFO] [stdout] 1458 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1469:9
[INFO] [stdout]      |
[INFO] [stdout] 1469 |         unsafe { std::env::set_var("PRMANA_ACCEPT_PAM_ENV", "true") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1472:9
[INFO] [stdout]      |
[INFO] [stdout] 1472 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1479:9
[INFO] [stdout]      |
[INFO] [stdout] 1479 |         unsafe { std::env::set_var("PRMANA_ACCEPT_PAM_ENV", "1") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1482:9
[INFO] [stdout]      |
[INFO] [stdout] 1482 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1492:13
[INFO] [stdout]      |
[INFO] [stdout] 1492 |             unsafe { std::env::set_var("PRMANA_ACCEPT_PAM_ENV", value) };
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1499:9
[INFO] [stdout]      |
[INFO] [stdout] 1499 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1506:9
[INFO] [stdout]      |
[INFO] [stdout] 1506 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1518:9
[INFO] [stdout]      |
[INFO] [stdout] 1518 |         unsafe { std::env::set_var("PRMANA_ACCEPT_PAM_ENV", "no") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1525:9
[INFO] [stdout]      |
[INFO] [stdout] 1525 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1532:9
[INFO] [stdout]      |
[INFO] [stdout] 1532 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1605:9
[INFO] [stdout]      |
[INFO] [stdout] 1605 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1607:9
[INFO] [stdout]      |
[INFO] [stdout] 1607 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1623:9
[INFO] [stdout]      |
[INFO] [stdout] 1623 |         unsafe { std::env::set_var("PRMANA_TEST_MODE", "false") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1625:9
[INFO] [stdout]      |
[INFO] [stdout] 1625 |         unsafe { std::env::set_var("PRMANA_ACCEPT_PAM_ENV", "no") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1639:9
[INFO] [stdout]      |
[INFO] [stdout] 1639 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1641:9
[INFO] [stdout]      |
[INFO] [stdout] 1641 |         unsafe { std::env::remove_var("PRMANA_ACCEPT_PAM_ENV") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1695:9
[INFO] [stdout]      |
[INFO] [stdout] 1695 |         unsafe { std::env::remove_var("PRMANA_POLICY_FILE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1697:9
[INFO] [stdout]      |
[INFO] [stdout] 1697 |         unsafe { std::env::remove_var("PRMANA_POLICY_YAML") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> pam-prmana/src/lib.rs:1699:9
[INFO] [stdout]      |
[INFO] [stdout] 1699 |         unsafe { std::env::remove_var("PRMANA_TEST_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pam-prmana` (lib test) due to 53 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74", kill_on_drop: false }`
[INFO] [stdout] 8b2402e08df333d200c3364668e31b21e17b2cf78daa38f55a03e602557b4d74
